/**
 * Copyright (c) 2013-Now http://jeesite.com All rights reserved.
 */
package com.jeesite.modules.app.mockexam.theory.entity;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

import com.jeesite.modules.zx.problem.bank.entity.TproblemBank;
import org.hibernate.validator.constraints.Length;

import com.jeesite.common.entity.DataEntity;
import com.jeesite.common.entity.TreeEntity;
import com.jeesite.common.mybatis.annotation.Column;
import com.jeesite.common.mybatis.annotation.Table;
import com.jeesite.common.mybatis.mapper.query.QueryType;
import com.jeesite.modules.zx.question.bank.entity.TquestionBank;

/**
 * 理论考试对象表Entity
 * @author zpp
 * @version 2020-02-08
 */
@Table(name="t_mockexam_theory", alias="a", columns={
		@Column(name="id", attrName="id", label="主键", isPK=true),
		@Column(name="obj_name", attrName="objName", label="数据名称", queryType=QueryType.LIKE, isTreeName=true),
		@Column(name="obj_type", attrName="objType", label="数据类型"),
		@Column(includeEntity=TreeEntity.class),
		@Column(includeEntity=DataEntity.class),
		@Column(name="obj_explain", attrName="objExplain", label="数据说明"),
		@Column(name="obj_answer", attrName="objAnswer", label="答案"),
		@Column(name="introduction", attrName="introduction", label="简介"),
		@Column(name="obj_picture", attrName="objPicture", label="封面"),
		@Column(name="num_bars", attrName="numBars", label="总条数"),
		@Column(name="analysis", attrName="analysis", label="解析"),
		@Column(name="post", attrName="post", label="岗位"),
	}, orderBy="a.tree_sorts, a.id"
)
public class AppExaminateTheory extends TreeEntity<AppExaminateTheory> {
	
	private static final long serialVersionUID = 1L;
	private String objName;		// 数据名称
	private Integer objType;		// 数据类型
	private Integer objExplain;		// 数据说明
	private String objAnswer;		// 答案
	private String introduction;		// 简介
	private Integer typestatus=0; //数据状态
	private Boolean checked=false;
	private String objPicture;
	private String analysis;
	private BigDecimal score=new BigDecimal(0.0);
	private String post;
	private List<TquestionBank> quetbankList=new ArrayList<TquestionBank>();
	private Integer numBars;

	private List<TproblemBank> problemBankList=new ArrayList<TproblemBank>();

	public List<TproblemBank> getProblemBankList() {
		return problemBankList;
	}

	public void setProblemBankList(List<TproblemBank> problemBankList) {
		this.problemBankList = problemBankList;
	}

	public Integer getNumBars() {
		return numBars;
	}

	public void setNumBars(Integer numBars) {
		this.numBars = numBars;
	}

	public BigDecimal getScore() {
		return score;
	}

	public List<TquestionBank> getQuetbankList() {
		return quetbankList;
	}

	public void setQuetbankList(List<TquestionBank> quetbankList) {
		this.quetbankList = quetbankList;
	}

	public void setScore(BigDecimal score) {
		this.score = score;
	}

	public String getPost() {
		return post;
	}

	public void setPost(String post) {
		this.post = post;
	}

	public String getAnalysis() {
		return analysis;
	}

	public void setAnalysis(String analysis) {
		this.analysis = analysis;
	}

	public String getObjPicture() {
		return objPicture;
	}

	public void setObjPicture(String objPicture) {
		this.objPicture = objPicture;
	}

	public Boolean getChecked() {
		return checked;
	}

	public void setChecked(Boolean checked) {
		this.checked = checked;
	}

	public Integer getTypestatus() {
		return typestatus;
	}

	public void setTypestatus(Integer typestatus) {
		this.typestatus = typestatus;
	}

	public AppExaminateTheory() {
		this(null);
	}

	public AppExaminateTheory(String id){
		super(id);
	}
	
	@Override
	public AppExaminateTheory getParent() {
		return parent;
	}

	@Override
	public void setParent(AppExaminateTheory parent) {
		this.parent = parent;
	}
	
	@Length(min=0, max=255, message="数据名称长度不能超过 255 个字符")
	public String getObjName() {
		return objName;
	}

	public void setObjName(String objName) {
		this.objName = objName;
	}
	
	public Integer getObjType() {
		return objType;
	}

	public void setObjType(Integer objType) {
		this.objType = objType;
	}
	
	public Integer getObjExplain() {
		return objExplain;
	}

	public void setObjExplain(Integer objExplain) {
		this.objExplain = objExplain;
	}
	
	@Length(min=0, max=255, message="答案长度不能超过 255 个字符")
	public String getObjAnswer() {
		return objAnswer;
	}

	public void setObjAnswer(String objAnswer) {
		this.objAnswer = objAnswer;
	}
	
	@Length(min=0, max=255, message="简介长度不能超过 255 个字符")
	public String getIntroduction() {
		return introduction;
	}

	public void setIntroduction(String introduction) {
		this.introduction = introduction;
	}
	
}